home *** CD-ROM | disk | FTP | other *** search
Text File | 1998-10-26 | 2.5 KB | 78 lines | [TEXT/ScoM] |
- (setq p1 '(a b c d e f g h i j k l m n o p q r s t))
- (setq p2 (gen-random 0.5 20 '(a b c d e f g h i j)))
- (setq p3 (gen-random 0.51 20 '(a b c d e f g h i j)))
- (setq p4 '(a b c d e f g h i j k l m n o p q r s t))
-
- (defun pick-nth (start step l)
- (let (out)
- (for i start step (length l) nil
- (if (nth i l) (push (nth i l) out)))
- (nreverse out)))
-
- (setq p1 '(a b c d e f g h i j k l m n o p q r s t))
- (setq p2 (append (pick-nth 0 2 p1) (pick-nth 1 2 p1)))
- (setq p3 (append (pick-nth 0 2 p2) (pick-nth 1 2 p2)))
- (setq p4 '(a b c d e f g h i j k l m n o p q r s t))
-
- (setq p1 '(a b c d e f g h i j k l m n o p q r s t))
- (setq p2 (gen-random 0.5 20 '(a b c d e f g h i j)))
- (setq p3 (reverse p1))
- (setq p4 (reverse p2))
-
- (setq p1-p2 (symbol-interpolate 8 p1 p2))
- (setq p2-p3 (symbol-interpolate 8 p2 p3))
- (setq p3-p4 (symbol-interpolate 8 p3 p4))
-
- (setq melody (flatten (symbol-repeat 2 (append p1-p2 (cdr p2-p3) (cdr p3-p4)))))
-
- (create-tonality test '(1/1 2/1 3/1 4/1 5/1 6/1 7/1 8/1 9/1 10/1 11/1 12/1 13/1 14/1 15/1 16/1 17/1 18/1 19/1 20/1))
- (create-tonality test2 '(1/1 3/1 5/1 7/1 9/1 11/1 13/1 15/1 17/1 19/1
- 21/1 23/1 25/1 27/1 29/1 31/1 33/1 35/1 37/1))
-
- ;; panning
-
- (setq freq 9) (setq samples 1024)
- (setq modulator (vector-mix (gen-ramp 0.4 0.1 samples)
- (gen-sin 50 0.01 samples)))
-
- (setq pan1
- (vector-modulate (gen-sin freq 0.5 samples)
- modulator))
- (setq pan2
- (vector-modulate (gen-sin freq 0.5 samples 90)
- modulator))
-
- (setq zonelen (* (get-tick '1/16) (length melody)))
-
- ; note: realisation depends on the tuning resolution of the synth that
- ; you play the piece, change the tuning resolution accordingly
-
- (def-section sect-a
- default
- zone (list (/ zonelen 2) (/ zonelen 2))
- motive (def-motive theme
- length '(1/16)
- symbol melody
- velocity (vector-to-list (vector-round 60 90 (gen-sin 3 1 32))))
- piano1
- channel 1
- tonality (activate-tonality (test c 4 4024) (test2 c 3 4024))
- motive theme
- controller (mu80-controllers
- panning (list (vector-to-list (vector-round 1 126 pan1))))
- piano2
- channel 2
- tonality (activate-tonality (test c 4 4024) (test2 c 3 4024))
- motive (rev theme)
- controller (mu80-controllers
- panning (list (vector-to-list (vector-round 30 100 pan2))))
- )
-
- (def-tempo 80)
-
- (play-file-p nil
- piano1 '(sect-a)
- piano2 '(sect-a)
- )
-
-